package com.zmn.uac.common.info.kuaishou;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Objects;

/**
 * 快手小程序 session 信息，参考 <a href="https://mp.kuaishou.com/docs/develop/server/code2Session.html">code2Session</a>
 *
 * @author Rananquan
 * @since 2022年5月16日 18点38分
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class KuaiShouMiniProgramSessionInfo implements Serializable {
    private static final long serialVersionUID = -2363344755832287496L;

    /**
     * 结果码，返回1代表成功
     */
    private Integer result;

    /**
     * 会话密钥
     */
    @JSONField(name = "session_key")
    private String sessionKey;

    /**
     * 用户在当前小程序下的id。用户在同一开发者主体（以社会信用码为标识）下的不同小程序之间的open_id是一致的
     */
    @JSONField(name = "open_id")
    private String openId;

    public boolean isSuccess() {
        return Objects.equals(result, 1);
    }
}
